package com.example.demolib.mapper;


import com.example.demolib.entity.BookInfo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface BookInfoMapper {

    @Insert("insert into book_info (book_name,author,count,price,publish,status)"
    +"values (#{bookName},#{author},#{count},#{price},#{publish},#{status})")
    Integer addBook(BookInfo bookInfo);

    @Select("select * from book_info where status!=0 limit #{offset},#{limit}")
    List<BookInfo> getListByPage(Integer offset,Integer limit);

    @Select("select count(1) from book_info where status!=0")
    Integer count();

    @Select("select * from book_info where id = #{bookId} and status!=0")
    BookInfo selectBookById(Integer bookId);


    Integer updateBook(BookInfo bookInfo);


    Integer batchDeleteBookById(@Param("ids") List<Integer> ids);

}
